package czopyk.model.request;

import java.util.Map;

import czopyk.model.cost.DistributionId;

public abstract class LoadClass {

	public abstract RequestType getType();

	public abstract RequestClass getClazz();

	public abstract boolean isComposite();

	public abstract Map<LoadClass, DistributionId> getComponents();

	public boolean equals(Object o) {
		if (!(o instanceof LoadClass)) {
			return false;
		}
		LoadClass other = (LoadClass) o;
		return (getType().equals(other.getType()) && getClazz().equals(
				other.getClazz()));
	}

	@Override
	public String toString() {
		return "LoadClass [type='" + getType() + "', clazz='" + getClazz()
				+ "']";
	}
}
